iT邦幫忙

2023 iThome 鐵人賽

DAY 10
0

Model Performance Evaluation 就是在訓練完一個模型時來評估模型的好壞,一樣舉 Binary Classification Model 為例,在我們使用像是 XGBoost 訓練完之後,每一個資料我們都可以得到一個 Inference Score,這個 Score 是一個介於 0 ~ 1 間的浮點數,常解讀是 Probability of Positive,以 Account Takeover Detection 為例,也就是用戶這次的提款為非本人操作 (有異常) 的機率

基本做法

將所有有 Label 的資料集分成 Training, Validation, Testing,並在計算出以下指標

  • 準確度 Accuracy: 模型正確預測的比例。
  • 精度 Precision 和召回率 Recall: 在 Account Takeover detection 預測中,False Positives 的成本可能非常高,因此這兩個指標尤為重要,因為你讓一個正常用戶無法提款,可能會造成公司在名譽和用戶信任上損失,此外還需要花大量的客服資源來處理客戶投訴。舉另外一個例子,在防毒軟體中也面臨同樣的狀況,如果你把一個正常的檔案誤認為病毒,並將檔案隔離或移除,很有會造成公司財務上的損失
  • F1-Score: 精度和召回率的綜合指標
  • ROC 曲線和 AUC: 用於評價模型對正負類別的區分能力,但更著住在不同 threshold 下的分類表現
  • Kolmogorov-smirnov test (KS-test): 用來衡量正負類別的區分能力,KS 的結果相較於 ROC/ AUC 更直觀,且在特別在意 False Positive 的情境經,有很的區分能力是一個很重要的指標

近一步區分 Testing Dataset

在風控領域中,由於模型很常有高度時效性,為了確保模型的有效性,通常還會幫 Testing Dataset 做更近一步的區分

高度時效性我們可以用另一個角度來想,每一陣子駭客都會流行一些常用的手法,當這個手法被偵測到之後,駭客們就會逐漸發現這樣的手法無效,轉而去發掘新的方式,這樣新的方式從我們原本特徵的維度來看,很嘗試"沒有學習過的"Pattern,因此時效性在這類情境中格外重要

什麼是OOT測試集?

OOT測試集是指一個與訓練集時間段不重疊的數據集,通常用來模擬模型在未來會遇到的情況。舉例來說,如果訓練集使用的數據是從2022年1月到2023年5月的,那麼OOT測試集可能會使用2023年5月後的數據。

如何進行OOT測試?

通常,OOT測試過程與使用普通測試集的過程相似,舉上面資料為例,原本的測試及會依據月份被分割成三個 Dataset

  1. oot_2023_6
  2. oot_2023_7
  3. oot_2023_8
    每一個 oot Dataset 都會計算基本的指標如 Precision/ Recall,但是會更關注這些指標在時間序列上的變化,這點就非常需要在上線後透過導入 MLOps 持續性觀測,來知道你的模型是否需要 iteration 了

其他額外的衡量指標

  • 特徵重要性: 列出特徵重要性的排序除了增加可解釋性外,也對於後續的除錯和優化起了很大的幫助
  • 模型解釋性: 對於金融機構來說,模型的可解釋性是至關重要的。報告應詳述如何解釋模型預測,以及模型是否符合業務邏輯和規範。
  • 經濟影響評估: 模型報告應包含一個節點,用於評估模型實施後可能帶來的經濟影響,如成本節省、降低詐欺率等。
  • 錯誤分析: 這部分應詳細描述模型的錯誤類型,以及如何進一步改進模型以減少這些錯誤,換句話說,針對 現有資料的 False Postive Case 做分析

一個好的模型訓練結果報告應該至少要有以上的資訊,但是這些資訊存在兩個問題

  1. 在做報告時我要怎麼決定閥值,過往模型提供方在提供模型的同時,會一並提供一個固定的閥值,但這樣會使的模型無法控制,舉例來說,當今天用戶突然暴增,導致輸出的案件變多時,公司會需要投入過多成本營運,就會希望模型能暫時變得"嚴格"一些,只輸出重要的案件
  2. 難以真的比較兩個模型,如果目前線上已經有第一個版本的模型,你要提供第二個版本,要怎麼去衡量也是比較難的

明天會繼續介紹一些常見的方法來衡量模型的迭代


上一篇
Day 9 Data Processing Control
下一篇
Day 11 Model Comparison
系列文
踏上 MLOps 之路:從 Applied Data Scientist 到 MLOps 的轉變與建構30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言